Alteryxと整然データと集計のしやすさと
こんにちは、小澤です。
以前、整然データ(Tidy Data)について紹介させていただきました。
さて、今回はAlteryxで整然データの考えを活用すると、どんな点でお得なのかの例を紹介します。
2種類のデータの持ち方比較
まずは、以下のようなデータがあります。 これは整然データではありません。
これと同じ内容の整然データは以下のようになります。
この2つのデータは全く同じ内容で、Alteryxを使って相互に変換も可能です。
ここで、ちょっとこの2つのデータを見比べてみてください。 どっちの方が見やすい(内容を把握しやすい)と感じたでしょうか? おそらく多くの人は前者の整然データではない方が見やすいと感じたかと思います。
このように整然データにしたからといって、決して人間が見たときに可視性に優れているわけではなく、また、相互に変換も可能であるにも関わらず、なぜ整然データにしておくといいのでしょうか? この疑問に答えるために、 「整然データにしておいてよかった」と思えるようなシーンの例を紹介したいと思います。
整然データであることで集計が簡単になる例
先ほどのデータに対して、製品ごとの販売数合計値を求めたいとします。 最終的な出力は人間が見やすくするように、整然データではないものに追加した状態とします。
さて、このデータを整然データでは内容から作ろうと思った際は非常に簡単です。
Formulaツールで以下のように各月の値を足し合わせるだけです。
[1月] + [2月] + [3月]
一方、整然データから生成するワークフローは以下のようになります。
- 元のデータをCross Tabツールで横持ちに変換
- Summarizeツールで製品ごとの合計値を取得
- 製品名をキーにしてJoinツールで結合
としています。 これだけでは、ワークフローも少し複雑になっているように見受けられます。
さて、整然データにしておいたことで、効果を発揮するのはここからとなります。 月が替わって、データが以下のように更新されました。
この情報を反映させるためには、整然データではない方はFormula式に4月分を追加する必要があります。
[1月] + [2月] + [3月] + [4月]
一方、整然データの方のワークフローでは、ワークフローに変更点はありません。 データさえ更新されれば、どんなに月が増えても同じワークフローを実行すればそれに対応した状態となります。
今回は増えたのが4月分のみでしたが、これが毎月続くと、都度ワークフローの修正が必要になります。 その際、足し算の対象もどんどん増えていくので、Formula式もどんどん長くなっていきます。 足し算のみであれば、式自体はそれほど複雑化はしませんが、何を計算しているのかわかりづらくなっていったり途中に抜けている月があっても気付きづらくなってしまいます。 また、これを週次や日次に変更したいと言われたらもう対応できそうにありませんね...
整然データを使っていれば、常に変更の必要なく対応なワークフローとなります。 これによって汎用性の高いワークフローとなりました。
どのタイミングで整然データにしておくべきか
データ分析をする際には大きく分けて以下の3つを意識する必要があります。
- 元データを用意する
- 分析を行う
- 分析結果を活用する
Alteryxが担うのは2の部分となります。 データの加工や分析処理をワークフローとして実装するわけです。
ここで、意識する必要しておく必要があるのは
- 1で用意するのが整然データであれば分析処理が行いやすい
- 3を行うためには人間にとって確認しやすい内容であることが望ましい
ということです。 最初に整然データとそうでないデータを比較してもらったのはこのためです。
Microsoft Excelなどのデータ入力も分析も両方に対応したツールを使っている、この点についてあまり意識しなくても使えてしまうケースも多くあります(もちろん、先ほどの例のように明確に分けておくことで分析を行いやすい状況を作ることが可能です)。
Alteryxでは様々ななデータソースに対応しているため、これらは明確に意識しておく必要があります。 また、Text Inputツールなどの一部を除いてワークフロー内で直接データを入力することはできません。
先ほどの例では、相互に変換可能なデータを使っていたため、元データが月を横持ちにしている場合であっても、一度縦持ちの整然データにしてから処理を行う、ということも可能です。 実際のデータでは以下のように必ずしもそうであるとは限りません。
- 項目に重複が許可されるようなデータも扱うことが可能
- 横持ちがクロス集計表のように集計済みのものであった場合他の軸やより細かい粒度に変換することは不可
様々な分析で使いまわれるデータを考えた際にはあらかじめ整然データとなっていることが望ましいでしょう。
たとえは、月ごとに集計された単位ではなく、「いつ」「誰が」「何を」購入したか、という最小単位のデータで考えた際、同じ人が同じ日に同じ商品を2回購入するということも考えられます。
そういった最小単のデータがあれば、月ごとや日ごとなど様々な単位で集計が可能です。 また、月と商品だけでなく、購入者単位での集計も必要になった場合は集計の軸が異なる、という状況になります。
それらに柔軟に対応するには、まずは最小単位のレコードを整然データとして持っておくことが望ましいでしょう。
おわりに
今回は、Alteryxを使ったデータ集計に際して、整然データを利用することで汎用性が高まる例を紹介しました。 このほかにも処理内容自体がより簡単なものになるケースというのもあります。
Alteryxの導入なら、クラスメソッドにおまかせください
日本初のAlteryxビジネスパートナーであるクラスメソッドが、Alteryxの導入から活用方法までサポートします。14日間の無料トライアルも実施中ですので、お気軽にご相談ください。